home *** CD-ROM | disk | FTP | other *** search
- Hi,
-
- >Yes, it can hardly hurt to contact iD in any case. I'd be very surprised
- >if they have any objections to us writing this program. After all it's not
- >based on any of their sources, it's unlikely to behave exactly the same and
- >it's for a computer they might not even know exists.
- Yes, they seem to be quite cool in fact. But they just don't want any other
- people to make money with THEIR work, which is quite normal.
-
- >> Perhaps something like WAD, or BAD MOOD, I don't know. It's not very
- > ^^^^^^^^
- >I like that one!
- Laurent thought about MOOD. Good idea, heh?
-
- >No, but it'd be more comfortable to have at least a working title,
- >especially for discussions on newsgroups etc.
- OK, let's call it MOOD for short.
-
- >with almost the same thing anyway IMO. We can't do the cheating that
- >everyone else is using with this kind of programs for the Falcon since our
- >datastructures and their behaviour is already defined.
- Exactly. So the program should be more or less the same, it's what you
- think? And Laurent seems to be enthousiastic about the improvements he can
- bring. So...
-
- >I believe that kind of approach is very dangerous. The DVIEW engine for
- >example runs _much_ faster when the part of the map that's in front of you
- >is simple. Unfortunately, that's not very common in DOOM.
- Right.
-
- >Well, Laurent seems to think (see bottom) that optimizing DVIEW in assembly
- >will do wonders. I'm not that sure, though. Running the rendering on the
- >DSP is quite another matter, but then there's the problem of what to
- >transfer CPU<->DSP and how.
- I think we can't tell before we do some experimentation. I'm currently
- trying a mapped polygon routine on my own (that is, a quadrilateral polygon
- with vertical sides). When it's finished, I'll ask Laurent what he thinks.
- In fact, I don't know how he plans to do it. But I have to try
- independantly, just to see what can be done with the 68030 alone.
-
- >Before any real work is started I suggest that we profile the rendering
- >engine as far as possible. So far it seems to me that the biggest speedups
- >will be done at the highest levels (map clipping and projection).
- You mean that the texture mapping is standard enough stuff and that the real
- improvements will be to decide in the fastest possible way what to draw, and
- what not to draw?
- I agree with this.
-
- >I'm looking forward to hearing about it.
- Nothing revolutionary I think about my texture algo. But in fact, I don't
- know what is the method used by others. I want to test my ideas and then
- confront them with what exists.
-
- >I still haven't made the general release of MGIF, but that's not taking much
- >time at the moment. Then there is another project that I've had not done
- >anything about for a couple of years and...
- Yes, the same for me. A lot of ideas, but not enough time...
-
- >I'm a doctoral student researching some new ideas in the field of VLSI
- >clocking and synchronization. The work also includes about 20% teaching,
- >so I don't expect to get my PhD before the next millenium (if I do indeed
- >continue that long and isn't kicked out).
- So you're in computers to the throat!
-
- >In my free time (when I'm not programming) I read a lot (well, at least
- >it's 10-20kpages/year) of fiction, mostly thriller and fantasy. I also
- >play the trumpet in a big band and cornet in a brass band. I also took up
- >fencing recently.
- Fine. I read a lot, too. I used to read a lot of SF. But now I try to read a
- lot more "classical" litterature. SF is fun, but not so interesting...
- I was very good at fencing when I was a kid, but I quit when I was 17. I
- often play with the idea of digging my old sword out of the attic.
-
- >What are you doing yourself? I recall your work/school had something to
- >do with physics.
- Yes, I'm in the third year of my PhD. I teach, too (about 4 hours a week).
- And I'm doing physics. More precisely, mathematical physics, algebra, field
- theory, things like that.
-
- >---- here follows some email I've exchanged with Laurent ----
- >I've incorporated some simple statistics collection in DVIEW which gave
- >some numbers that are interesting for the optimization. The figures are
- >approximate averages over more than 200 drawings from five different levels.
- >
- >Function Calls Internal loops
- > (1) (2)
- >Addfloor 150 1100
- >Addwall 50 1700
- >Coldraw 600
- >Rowdraw 1000
- >Drawnode 200
- >Drawssector 100 300
- >Loadseg 150 1600 400
- >
- >Time for
- >structure setup: 0.28
- >actual drawing: 0.08
- >chunky to planar: 0.11
- OK. The structure setup is what takes the largest amount of time. Of course,
- no texture, but it shows that you're right in saying that this is the part
- to work on.
- Is Rowdraw used only when drawing floors? I think our program will certainly
- not have mapped floors. Or as an option for people having F040s or things
- like that?
-
- >I am, however, almost certain that the necessary data from the .WAD can
- >be held in the DSPs RAM. The original 'structure engine' used a number
- >of large arrays, though, which would not have fit. Fortunately, I believe
- >I have found a way to get rid of almost all of that.
- What is it? And has all this data to be kept at the same time?
- Anyway, I have to take a serious look at the source of DVIEW. I haven't had
- the time to do it yet.
-
- >Finally, I've given some thought to the sprite drawing and discovered
- >that it will be even more tricky than I previously thought. The clipping
- >against walls and floors will be quite difficult. Perhaps even to such
- >a degree that the extra arrays I mentioned above must actually be
- >re-inserted, which would be very bad.
- Yes, because there is probably no other way to draw them than back to front.
- So you have to keep track of the coordinates of the transparent polygons of
- the ssectors. Is that it or am I completely out of the point?
-
- >Yes, the maze is of course the more important part, but I worry that
- >we'll optimize away the stuff that makes the sprites possible.
- >I'll stop thinking about that for the moment, though.
- No no! I think you're right. We have to keep in mind that we have sprites to
- draw. And do the transparent textures bring problems?
-
- >The engine itself is not big at all as you can see from the sources.
- >I think the sources compile to around 5-10 kbyte m68k object code.
- >The data from the WAD I've used was also of quite reasonable size.
- Excellent!
-
- >My optimization consisted of drawing walls, floors and ceilings as
- >soon as they were available, which got rid of all three arrays mentioned,
- Yes, I thought the right way to do it was to draw all the solid walls of a
- ssector, and then, for each transparent wall, to look in the BSP which
- ssector is behind it, and draw this sector, clipped by the transparent wall.
- Then, when returning, draw the transparent or semi transparent wall. So you
- have to pile the coordinates of the transparent walls. Couldn't this data be
- used to draw the sprites, also? Or am I once more completely out of the
- question?
-
- >I've heard that SNES DOOM has no floor or ceiling. I'll try that out.
- Well, even so, you've got to draw a filled polygon...
-
- >******************************************************
- >I've spent far too much time with DVIEW, so I'm going to leave it as it is
- >for now. It simply refuses to do as I want...
- What do you mean?
-
- >For good examples of the bugs, go into the room directly on the left
- >in the first level and look at the top of the stairs. The problem there
- >is that the wall outside is drawn on top of rest of the room. The
- >secret door near the end of the level is an example of the 'transparancy'.
- >If you can fix those bugs, I'd be very happy.
- I'll also try to understand this.
-
- OK.
- Well, Bye. I'll keep you informed. But I have to admit I'm very impressed by
- the speed at which you achieved so much.
-
- Regards,
- Bertrand
- +-----------------------------------------------------------+
- |Bertrand Le Roy |A Darwinian theory of Gravitation: |
- |bleroy@ccr.jussieu.fr|In the beginning, mature apples fell|
- |tel. 44.27.72.95 |in all directions. But only the trees|
- |fax. 44.27.72.87 |whose apples fell down have survived.|
- +-----------------------------------------------------------+
- |Laboratoire de Gravitation et Cosmologie Relativistes |
- |Universite Pierre et Marie Curie, tour 22-12, 4e etage |
- |4, place Jussieu, 75252 Paris Cedex 05 |
- +-----------------------------------------------------------+
-
-
-